<?php

/**
 * PersonaDetalle form.
 *
 * @package    sibi-salud
 * @subpackage form
 * @author     SIBI <sibiud@gmail.com>
 */
class PersonaDetalleForm extends BasePersonaDetalleForm
{
  public function configure()
  {
//    Cargar los generos
    $this->loadGenres();
//    Cargar estratos
    $this->loadEstratos();
//    Validar el lugar de nacimiento
    $this->validatorFrom();


    unset (
      $this['created_at'], $this['updated_at'], $this['persona_id']
    );
  }

  public function loadGenres()
  {
    $generos = PersonaDetallePeer::getGenres();

    $this->widgetSchema['genero'] = new sfWidgetFormChoice(array(
        'choices'  => $generos,
        'expanded' => true,
    ));

    $this->validatorSchema['genero'] = new sfValidatorChoice(
            array( 'choices' => array_keys($generos) ),
            array( 'required' => 'Selecciona el genero' )
          );
  }

  public function loadEstratos()
  {
    $estratos = PersonaDetallePeer::getEstratos();

    $this->widgetSchema['estrato'] = new sfWidgetFormChoice(
      array(
        'choices'  => array_merge( array( "" ) , $estratos),
        'multiple' => false,
        'expanded' => false,
      )
    );

    $this->validatorSchema['estrato'] = new sfValidatorChoice(
            array( 'choices' => array_keys($estratos) ),
            array( 'required' => 'Selecciona el estrato' )
          );
  }

  public function validatorFrom()
  {
    $this->validatorSchema['lugar_nacimiento'] = new sfValidatorString(array(),array(
        'required' => 'El lugar de nacimiento es necesario.'
    ));
  }

}
